#define _CRT_SECURE_NO_WARNINGS
int* findErrorNums(int* nums, int numsSize, int* returnSize)
{
    *returnSize = 2;
    int* ret = malloc(sizeof(int) * 2);
    int i = 0;
    int j = 0;
    int tmp = 0;
    for (i = 0; i < numsSize; i++)
    {
        for (j = 0; j < numsSize - 1 - i; j++)
        {
            if (nums[j] > nums[j + 1])
            {
                tmp = nums[j + 1];
                nums[j + 1] = nums[j];
                nums[j] = tmp;
            }
        }
    }
    for (i = 0; i < numsSize - 1; i++)
    {
        if (nums[i] == nums[i + 1])
        {
            ret[0] = nums[i];
            break;
        }
    }
    for (i = 0, j = 0; i < numsSize; i++, j++)
    {
        if (i + 1 == numsSize)
        {
            ret[1] = i + 1;
            break;
        }
        if (nums[i] != j + 1)
        {
            if (nums[i + 1] != j + 1)
            {
                ret[1] = j + 1;
                break;
            }
            else
            {
                i++;
            }
        }
    }
    return ret;
}